1.5 Quantum parallelism

Feynman的想法在1985年被David Deutsch解释地更具体,Deutsch指出量子计算机的潜能在于量子并行性(quantum parallelism)。考虑一个黑盒,可以将一个比特映射到另一个比特上,但我们不知道内部发生了什么,也许计算过程很复杂,因为它耗时24小时。一共有四种可能的函数映射关系,我们想要知道这个黑盒在计算什么。如果要计算的结果,则总共要消耗两倍时间,即48小时。如果我们退一步,只想验证还是,也还是需要做两次计算,耗时48小时。

现在看看量子计算机能不能只用一次计算(耗时24小时)就能完成任务。尽管映射可能是不可逆的,但量子计算过程是幺正的且一定是可逆的。考虑一个从2 qubit转换到2 qubit的幺正变换: 其中代表“异或”。此操作表示,若就翻转,若则不做任何操作。Deutsch问的问题是,能不能只执行一次操作就验证到底相同还是不同?

由于黑盒是一台量子计算机,我们可以选取输入态为的叠加态:

  • 若选取第2个qubit为叠加态,那么映射 于是我们将分离到了前面系数中(与有关的相位项)。

  • 我们再将第1个qubit 也改为另一个叠加态:

  • 最后,将第一个比特投影到一组基向量上。显然,如果:

    • (称作balanced function)那么我们总会得到
    • (称作constant function)那么我们总会得到

就这样,我们解决了Deutsch的问题,而且发现了经典计算机和量子计算机的区别:经典计算机必须运行两次黑盒计算才能区分balanced function和constant function,但量子计算机只需要一次计算就可以完成任务。

这是因为量子计算机操作的不是单个态而是叠加态,因此可以一次获得映射函数的“全局”信息,这个信息同时依赖于。在这个意义上我们称它具有量子并行性(quantum parallelism)。

现在假设我们对作用在N-qubit上的函数的全局性质感兴趣,此函数具有个可能的输入,如。要得到函数完整的映射表,需要执行的计算。然而这个计算对于的情况完全不可行,比如时需要次计算。但对于一个执行幺正变换 的量子计算机来说,我们可以选取存储在输入寄存器中的初态为: 只执行一次上述变换,产生了状态 函数的全局信息都包含在了这个态中,只要我们想个办法提取出来即可。

这个量子计算呈现出了“大规模量子并行性”(massive quantum parallelism)。函数再复杂都只需要计算一次,这就是量子并行性的威力。这种大规模并行性也是Shor设计因数分解算法的出发点。

正如前面提到的,量子信息是编码在物理系统不同部分之间的非局域关联(纠缠)中的,比如上述的信息包含在了量子计算机的输入寄存器和输出寄存器的纠缠中。然而,提取这个非局域信息并不容易。

比如,假如我要去测量输入寄存器,它就会塌缩到某一个本征态,这个本征态是从个可能的态中随机选择的。这个过程会得到状态。我们可以继续测量输出寄存器,但只能得到测量结果。但是由于两个寄存器之间的纠缠被第一次测量破坏,我们就没有机会再通过测量去确定任何的函数值了。在这种情况下,量子计算机并不比经典计算机更强大。

Deutsch问题的解决方案告诉我们,如何巧妙利用那些编码在量子非局域关联中的有效信息是设计量子算法的关键。

results matching ""

    No results matching ""